package com.charles.seckillsystem.controller;

import com.charles.seckillcommon.core.domain.AjaxResult;
import com.charles.seckillcommon.core.domain.TableInfo;
import com.charles.seckillcommon.security.utils.ThreadUtil;
import com.charles.seckillsystem.service.SysOrderService;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;

@RestController
@RequestMapping("/order")
public class SysOrderController {
    
    @Resource
    private SysOrderService sysOrderService;
    
    /**
     * 用户订单
     */
    @GetMapping("/getOrderList")
    public TableInfo getOrderList(Integer pageNum, Integer pageSize) {
        return sysOrderService.queryOrderList(Long.parseLong(ThreadUtil.getUserId()), pageNum, pageSize);
    }

    /**
     * 订单详情
     */
    @GetMapping("/getOrder/{orderId}")
    public AjaxResult getOrder(@PathVariable("orderId") String orderId) {
        return AjaxResult.success(sysOrderService.getOrder(orderId));
    }
    
    /**
     * 订单支付响应
     */
    @PostMapping("/orderPaySuccess/{orderId}")
    public void orderPaySuccess(@PathVariable("orderId") String orderId) {
        sysOrderService.payOrderSuccess(orderId);
    }
    
    /*
     由于是银行秒杀系统，因此这里设定秒杀的都是理财产品
     如果有商品需求的话，可以外接一个表来保存发货地址
     数据库有提供相关的表
     */

}
